package opensocial4gwt;


public final class Name extends BaseJsObject {
	private static enum Field {
		FAMILY_NAME, GIVEN_NAME, ADDITIONAL_NAME, HONORIFIC_PREFIX, HONORIFIC_SUFFIX, UNSTRUCTURED;

		public native String value() /*-{
			return $wnd.opensocial.Name.Field[this.@opensocial4gwt.Name.Field::name()()];
		}-*/;
	}
	
	protected Name() {
	}
	
	public String getFamilyName() {
		return getFieldString(Field.FAMILY_NAME.value());
	}
	
	public String getGivenName() {
		return getFieldString(Field.GIVEN_NAME.value());
	}
	
	public String getAdditionalName() {
		return getFieldString(Field.ADDITIONAL_NAME.value());
	}
	
	public String getHonorificPrefix() {
		return getFieldString(Field.HONORIFIC_PREFIX.value());
	}
	
	public String getHonorificSuffix() {
		return getFieldString(Field.HONORIFIC_SUFFIX.value());
	}
	
	public String getUnstructured() {
		return getFieldString(Field.UNSTRUCTURED.value());
	}
}
